typedef struct {
    int (*calculate)(int a, int b);
} Strategy;

int add(int a, int b) { return a + b; }
int sub(int a, int b) { return a - b; }

// 使用：
Strategy strategy_add = { .calculate = add };
Strategy strategy_sub = { .calculate = sub };

int result = strategy_add.calculate(3, 2); // 输出 5